package org.scirp.ijmis.service.review;

import java.util.List;

import org.scirp.ijmis.po.review.ReleasedComment;
import org.scirp.ijmis.po.review.ReviewPaper;
import org.scirp.ijmis.util.Pagination;

public interface IReviewPaperService {
	public ReviewPaper selectById(Long id);

	public boolean updateReviewPaper(ReviewPaper reviewPaper);

	public ReviewPaper selectByPaperIdAndPersonId(Long paperId, Long personId);

	public List<ReviewPaper> selectByPersonId(Long personId);

	public List<ReviewPaper> selectByJournalId(String isAccepted, Long journalId, Pagination pagination);

	public boolean updateReviewPaperToReleaseComment(String isAccepted, Long reveiwPaperId);

	public boolean updateToWaitingUse(ReviewPaper reviewPaper, ReleasedComment releasedComment);

	public boolean updateToUsed(ReviewPaper reviewPaper, ReleasedComment releasedComment);

	public boolean updateToNotUse(ReviewPaper reviewPaper, ReleasedComment releasedComment);

	public Long selectCountByJournalIdAndIsAccepted(Long journalId, String isAccepted);

	public Long selectCountByJournalIdAndPaperId(Long journalId, Long paperId);

	public List<ReviewPaper> selectByPaperIdAndJournalId(Long paperId, Long journalId, Pagination pagination);

	public Long saveReviewPaper(ReviewPaper reviewPaper);

	public boolean deleteReviewPaper(ReviewPaper reviewPaper);

	public Long selectCountReviewPaperByIsAccepted(Long personId, String isAccepted);

	public List<ReviewPaper> selectByPaperId(Long paperId);
}
